1. Technical Field
The invention is related to digital communication devices that both transmit and receive, such as a computer modulator-demodulator (modem) or a network interface circuit for a personal computer, and more specifically to the reduction of near-end cross-talk and echo in such devices.
2. Background Art
A digital communication device useful, for example, in linking a personal computer to a local area network typically must be able to transmit data as well as receive data. In a local area network, the communication device is part of a network interface card of the personal computer, the network being formed by multi-conductor cables connected between the network interface cards of the different personal computers in the network. Typically, a network interface card transmits communications on one set of pins or conductors of the multi-conductor cable while receiving communications on another set of pins of the cable. However, due to mutual coupling between the different conductors of the cable, the signal transmitted by the transmitter portion of the network interface card (the xe2x80x9cnear endxe2x80x9d) may be sensed by the receiver portion of the network interface card along with a signal received from another computer in the network (at the xe2x80x9cfar endxe2x80x9d). This causes interference and is often referred to as near end crosstalk because some portion of the near end transmitter is coupled into the near end receiver. We desire that only the far end transmitter be seen at the near end receiver. Such crosstalk can disrupt communications by making it difficult or impossible for the receiver to discriminate the received signal from noise (the noise is the near end transmitter or transmitters).
It has been discovered that the crosstalk can, in principle, be removed by cancellation. If the version of the near end transmitted signal that is actually coupled to the receiver could be determined, then its inverse could be generated and applied to the receiver""s input as a correction signal. However, it is not possible to predict what portion, if any, of the near end transmitted signal will be coupled to the receiver at any given moment and therefore it is not possible to predict what the correction signal should be. However, the correction signal could be derived using feedback to evaluate the errors of successive attempts and improve the correction signal. For example, well-known gradient descent methods and the like could be employed. Specifically, using the least means square (LMS) algorithm disclosed by Bernard Widrow and Samuel D. Stearns, Adaptive Signal Processing, the correction signal could be derived by varying selected parameters of the transmitted signal from which the correction signal is derived so as to optimize the cancellation of the near end crosstalk. I have discovered that in many applications, such as Fast or Gigabit Ethernet, the correction signal most likely consists principally of a delayed and bandpass filtered and attenuated version of the transmitted signal. Due to the nature of the mutual coupling that causes near end crosstalk, the correction signal may have to include a number of components of the transmitted signal each with a different time delay and a different amplitude, but with a relatively fixed bandpass filter. The delays and amplitudes would change over time due to the random nature of the near end crosstalk.
Since these delays and amplitudes cannot be known beforehand, the LMS algorithm would process the full range of possible delays (i.e., each tap in a filter) and find an amplitude (weight) and for each delay so as to reduce the feedback error. In successive iterations, the LMS algorithm would generate successive lists of the weights for each time delay in the range of delays. However, it would not seem practical to implement such a process on an integrated circuit because during each iteration, the number of multiplications that are performed to derive the correction signal is equal to the number of delays. This is because each delayed version of the transmitted signal across the range of possible time delays must be multiplied by the corresponding weight computed by the LMS algorithm for the current iteration. Since a very large number of such multiplications would appear to be necessary, it would not seem the foregoing approach is practical for implementation at extremely high speeds on an integrated circuit. At extremely high speeds, such as those encountered in a giga-bit per second computer network, these multiplications would likely have to be carried out simultaneously, so that a very large number of dedicated multipliers would have to be provided on the integrated circuit, rendering this approach impractical.
A problem for all adaptive systems is the definition of the error which the adaptive algorithm would seek to minimize. Another problem for adaptive systems that control the type of NEXT/Echo cancellers described above is that the canceller being adapted often contains a smaller number of adaptable parameters than the conventional LMS algorithm produces. So a method of choosing a subset of parameters must be designed.
The invention is embodied in an adapter for use with a near end crosstalk (NEXT) canceller which reduces crosstalk from a locally transmitted signal in a locally received digital signal by superimposing on the received signal a correction signal comprising a sum of time-delayed weighted and bandpass filtered samples of the transmitted signal corresponding to a range of n time delays. The adapter includes a non-linear subtractor for comparing certain samples of the received digital signal with an expected mean value to produce an error and a memory for storing a set of n weights associated with the n time delays. The adapter further includes an algorithm processor for adjusting the n weights in a manner tending to reduce the error and ranking logic for determining the m best of the n weights. Output logic provides to the NEXT canceller the m best of the n weights and the corresponding time delays of the m greatest ones of the n weights, wherein m is less than n, whereby the correction signal constitutes the sum of the products of the m time delayed samples and the m weights.